EC2についてあなたが考えていた事とこれから知って欲しいTIPS16個 #reinvent #DVC302
DVC302 And You Thought You Knew Amazon EC2
セッション概要はこちら。
When is the last time you explored the nooks and crannies of Amazon EC2? While you weren’t looking, AWS leveled it up with more features and capabilities than you can shake a shell at. This talk explores the newest, shiniest Amazon EC2 features, including the Amazon EC2 Systems Manager and the Application Load Balancer, served with a fine selection of pro tips sourced from experts throughout the AWS community.
EC2関連の近年のアップデートや、関連ツールやTIPSの紹介が大量にされている楽しいセッションでした。EC2はAWSの中でも最も枯れたサービスの一つですが、このセッション内容を御覧いただき、新しい発見があれば、筆者としては幸甚です。
pssh(paralell sshとは違う)とかは、かなり面白そうでしたYO!
__ (祭) ∧ ∧ Y ( ゚Д゚) Φ[_ソ__y_l〉 EC2ダ ワッショイ |_|_| し'´J
EC2関連の最近の更新内容
- IPv6対応
- KVM対応の新インスタンスタイプ
- Elastic Network Adapter - 25 Gps
- 秒単位課金
- Elastic GPUs
- ターゲット指定のAuto Scalingオプション
- 新リージョン:オハイオ、カナダ、ロンドン、ムンバイ、ソウル
- (近く開設予定)パリ、ストックフォルム、香港、ベルリン
CloudWatch Eventsの更新内容
- スケジュールイベント
- インスタンス状態の遷移
- System Manger対応
- メンテナンスウィンドウ対応
- ECS イベントストリーム
- EBS スナップショットの暗号化、復号化対応
- クロスアカウントでのイベント配信
CloudWatch Telemetryの更新内容
- 高解像度(1s/3H)のカスタムメトリクス対応
- 高解像度(10s)のアラーム
- CloudWatch pluginの収集
- ダッシュボード(GUI,CLI)
- パーセンテージによる状態遷移
- ログ対応
- ログパーサーとアラームのためのメトリクスフィルター
EC2 System Mangerの更新内容
- リモートからのRun Command対応したコマンド実行
- パラメータストアによる設定ファイルのコントロール
- State ManagerとMaintenance Windowsを利用した期間指定タスク
- ノード初期化時のスッテプワークフローの自動化
- インベントリーの収集とパッチ適用状況の把握
A shell for the EC2 Parameter Storeの紹介
kountable/pssh: A shell for the EC2 Parameter Store
psshは、EC2 Parameter Storeのためのインタラクティブなシェル機能を提供する。
- 親しみやすいコマンド(cd, ls, cp, mv, rm)を利用して、階層的にパラメータストアを操作可能
- 再帰的にパラメータの削除やコピーに対応
- パラメータヒストリー
- putによる新パラメータの作成
- emacsスタイルのシェルエクステンションの提供
- -fileコマンドによるバッチ実行
- インラインコマンド
Game of Thronesにおけるユースケースの紹介。psshからEC2 Parameter Storeにパラメータを格納後、CloudWatch Eventを起動し、Lambda起動後、そのパラメータをCloudWatchMetricsとして収集。結果をGrafana参照可能となる。
psshはEC2 Parameter Storeの利用を劇的に楽にできるので、ぜひ、一度試してみることをオススメしたい。
コミュニティから収集されたTIPS16個の紹介
最後に、EC2コミュニティから収集された重要なTIPSを紹介していく。少しでも皆さんの役に立つことがあれば良いね!どんどん行くよ!
infrastructure automation
Packerを、イメージ作成に。 Ansibleを、サーバープロビジョニングに。 AWS Lambda を、AWS Glueと組み合わせて使おう。
Single node ASGs for self-healing and resilience
シングルノードに適用されたAuto Sacling Groupは、自己復旧に非常に役に立つ
AWS Config Strategy
Use Config Rules to enforce compliance with tagging schemes, EBS snapshots, security group rules, or other site preferences.
AWS Config Rulesの利用は、タグスキーマ、EBSスナップショット、セキュリティグループや他のサイトのコンプライアンス統制に非常に役に立つ。
Use burstBalance cloudWatch metric
gp2,St1,Sc1のEBSボリュームのI/Oクレジット関しに、バーストバランスCloudWatchメトリクスを活用しよう。
Use the CPUCredigUsage
T2インスタンスタイプでは、CPUバーストの利用状況確認のため、CPUCreditUsageと、CPUCreditBalanceの、CloudWatchメトリクスを活用しよう。
github.com/awslabs/aws-shell
awslabs/aws-shell: An integrated shell for working with the AWS CLI.
AWS CLIの使い勝手をさらに瀑上げする素晴らしいプロダクトだ。インストールも簡単。まずは、使ってみることをオススメする。
Network throughput
ネットワークスループットは、持続的にインスタンスタイプに依存している。ネットワークが遅いときは、インスタンスタイプの見直しを忘れないこと。
In CloudFormation, request SSD
CloudFormationにおいては、明示的に指定しないと、SSDを利用できない。忘れないように気をつけよう。
Protect SSH login
SSHアクセスには、MFAを利用し、さらに、Fail2banの利用を検討すること。IPアドレスを制限したり、failログイン試行をシャットアウトできる。
Use ControlePersist
SSH利用の操作性を向上させるため、ContolePersistの利用を検討しよう。
Use ssh -D and the SwitchyOmega Chrome extension
ssh -Dオプションとともに,Proxy SwitchyOmegaの利用を検討しよう。プライベートネットワークで非常に有用だ。
Use AssumeRole in multiple apps
一つのインスタンスで複数のアプリケーションを稼働させている場合、AssumeRoleを個別に適用し、各アプリケーションの権限を制御しよう。
Protece the EC2 metadata and userdata.
EC2のメタデータとユーザーデータは、必ず保護しておくこと。
Use the instance identity document
EC2インスタンスの権限を把握するため、Instance Identity Documentsの利用を検討しよう。
Use Linux >= 4.4
きちんとカーネルバージョンが4.4以上のLinuxを利用しよう。
Use icanhazip.com
checkip.amazonaws.comは、HTTPにしか対応しておらず、信用出来ない。icanhazip.comを利用しよう。
まとめ「EC2関連の各種ツールとTIPSを多数聞けた有意義なセッションでした」
最初は、最近のEC2関連のアップデートの公開に始まり、いろんなツールや、TIPSを多数聞くことができた楽しいセッションでした。
個人的には、EC2 Parameter Storeを効率よく管理することができるkountable/pssh: A shell for the EC2 Parameter Storeが、一番面白そうでした。
これはぜひ、一度使ってみて、またブログ書こうと思います。
その他、気になるキーワードがあれば、深掘していただければ有用なTIPSが満載かと思いますがどうでしょう。
それでは、今日はこのへんで。濱田でした。